home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / DESK / CORE / Desk / History < prev   
Text File  |  1996-09-11  |  11KB  |  479 lines

  1. History of changes since DeskLib 2.30:
  2. ••••••••••••••••••••••••••••••••••••••
  3.  
  4.  
  5. 11 Sep 1996    Desk 3.00beta
  6.  
  7.  
  8. Changes between DeskLib 2.30x betas and release 3.00 beta of Desk:
  9. ——————————————————————————————————————————————————————————————————
  10.  
  11. Menu2
  12. Desk_Menu2_Create now requires a (possibly NULL) pointer to a
  13. function to call whenever a menu is closed in any way.
  14.  
  15. LinkList
  16. Desk_LinkList_InsertBefore/After now work if pos is NULL.
  17.  
  18. Core
  19. Desk_os_error is now typedef-ed to _kernel_oserror if compilation is
  20. with Acorn compiler. This allows the two types to be used interchangably
  21. which is sometimes very useful.
  22. New boolean typedef enum 'Desk_bool' is used wherever DeskLib's BOOL was
  23. used.
  24. Desk__MODULE_CLIENT is expected to be predefined when compiling with cc
  25. -zm.
  26.  
  27. BackTrace
  28. New library for walking the stack. Very useful when debugging...
  29.  
  30. Jump
  31. Macros/functions involving setjmp and longjmp, for use by the Error2
  32. library. These should be compatible with SDLS, but I haven't tried this.
  33.  
  34. Error2
  35. All support for handling errors. All of Desk uses this library when an
  36. error occurs.
  37.  
  38. DynamArea
  39. Simple management of dynamic areas - allows you to easily create/resize
  40. etc, without worrying about the rather unhelpful behaviour of the
  41. underlying SWIs - DynamArea keeps track of the actual size of the area
  42. etc.
  43.  
  44. Event
  45. Added Desk_Event_MessagesClaim and Desk_Event_MessagesRelease - simply
  46. claim/release all three message types in one go.
  47.  
  48. Import2
  49. Provides general support for exporting data using either file or ram
  50. transfer.
  51.  
  52. MsgTrans
  53. Added functions for finding the size of a message after substitution,
  54. looking up into Desk_deskmem_buffer's, opening a file with the system
  55. info stored in RMA.
  56.  
  57. KernelSWIs
  58. Added functions for convenient reading of a system variable.
  59. Added functions for reading/writing CMOS.
  60.  
  61. File
  62. Removed the old system which used a global variable to store the last
  63. error returned.
  64. Added a few extra functions.
  65.  
  66. Filing
  67. Added Desk_Filing_CompareDates.
  68.  
  69. DeskMem
  70. New library which provides standard veneers for malloc et al, which
  71. raise errors instead of returning 0. Uses function pointers to point to
  72. malloc, realloc etc, which can be changed to point to user-supplied ones
  73. (eg if you want all memory to be in a dynamic area)
  74. Added Desk_deskmem_buffer and associated support functions, which
  75. provide easy-to-use buffers which are always multiples of an initial
  76. size, to try to prevent fragmentation.
  77.  
  78. Export
  79. Handles export of data using file or ram transfer.
  80.  
  81.  
  82. Many functions which previously returned an (os_error*) have been
  83. changed to return void, and raise an error if something goes wrong. Eg
  84. all the Wimp SWI veneers.
  85.  
  86.  
  87.  
  88.  
  89.  
  90. ********************************************************************
  91.  
  92. DeskLib betas 2.3x
  93. ——————————————————
  94.  
  95. Updates between DeskLib beta versions since version 2.30
  96.  
  97.  
  98.  
  99. 13 May 1996
  100.  
  101. Filing now treats images as directories.
  102.  
  103.  
  104. 09 May 1996
  105.  
  106. Event__ExitFunction now sets taskhandle to 0 after calling
  107. Wimp_CloseDown.
  108.  
  109. Error_Report functions now output backtrace to stderr in debug builds.
  110.  
  111.  
  112.  
  113. 08 May 1996
  114.  
  115. Module verion now compiled with -ff to remove embedded fn names. Added
  116. DL_M_Fn with names.
  117.  
  118.  
  119. 07 May 1996
  120.  
  121. Error2_VerboseExit now displays OS error using _kernel_last_oserror()
  122. when signal error is SIGOSERR.
  123.  
  124.  
  125. 30 Apr 1996
  126.  
  127. Core.h: Added _DeskLib__Zm - defined when compilation is either for
  128. module (cc -Zm) or for DLL (also cc -Zm). This is because -Zm code
  129. doesn't like initialised static data outside of functions...
  130.  
  131. Added DeskLib:o.DeskLib_M, compiled with -Zm, for use in modules.
  132. '_DeskLib__MODULE' is predefined for this build.
  133.  
  134. Added DeskLib:o.Debug.uniquefile_m - unique-file debugging compiled with cc -Zm.
  135.  
  136.  
  137.  
  138.  
  139. 17 Apr 1996
  140.  
  141. Added Debug_SetNestingIndentation( const char*). Subsequent ouptut from
  142. Debug_Printf is indented with multiple copies of the specified string,
  143. according to function-call nesting.
  144.  
  145. Added BackTrace libray, for getting information from the stack about
  146. which functions are active etc.
  147.  
  148.  
  149.  
  150. 29 Feb 1996
  151.  
  152. Added Debug_Assert for Event handlers being > 0x8000
  153.  
  154. 27 Feb 1996
  155.  
  156. Removed close icon from TestApp's query window - caused illegal handle.
  157.  
  158.  
  159. 23 Feb 1996
  160.  
  161. Fixed bug in OS_ReadVarVal_ReadIntoBuffer - sys var is now read as a
  162. string, and terminated according to returned length, rather than end of
  163. buffer.
  164.  
  165.  
  166. 22 Feb 1996
  167.  
  168. Added #pragma -c0 to a Pane2.c.Open and Pane2.c.Pane2 - cc506 complains
  169. about internal inconsistancy.
  170.  
  171.  
  172. 12 Feb 1996
  173.  
  174. Removed Debug__Dummy, and changed Debug_Dummyf macro to use printf. 
  175. CC could generate AOF file which referenced debug_level even though it
  176. wasn't used in the compiled code. Fixed this by #defining
  177. Debug<n>_Printf straight to Debug_Dummyf.
  178.  
  179.  
  180. 09 Jan 1996
  181.  
  182. Minor changes to Menu2.
  183.  
  184.  
  185. 13 Dec 1995
  186.  
  187. Added jumpauto_lasterror.
  188.  
  189.  
  190. 12 Dec 1995
  191.  
  192. Added Error2_GetNewErrorType
  193. Added File_EnsureDirectory, File_EnsureParentDirectory
  194. Fixed bug in Menu2 - was calling non-existent menu2 choice-handler when
  195. a menu2 had its own leafs.
  196.  
  197.  
  198. 01 Dec 1995
  199.  
  200. Added Error2_HandleAllSignals
  201.  
  202.  
  203. 29 Nov 1995
  204.  
  205. Changed Jump library.
  206.  
  207.  
  208. 19 Nov 1995
  209.  
  210. Added File_AllocLoad
  211.  
  212.  
  213. 18 Nov 1995
  214.  
  215. Made DeskMem use function pointer to the memory allocation functions.
  216. This enables a program to change what functions it uses for static
  217. memory at run-time. It also means that there is no need to replace
  218. DeskMem at link-time.
  219.  
  220.  
  221. 17 Nov 1995
  222.  
  223. Moved DeskMem error-handling into a separate .c file.
  224.  
  225.  
  226. 2.35beta    16 Nov 1995
  227.  
  228. Added file '...Docs.Files', which lists and has comments on (nearly) all
  229. the directory structure and files that make up DeskLib.
  230.  
  231.  
  232. 15 Nov 1995
  233.  
  234. Added DeskLib:o.Debug.DeskLib - a version of DeskLib compiled with
  235. 'DeskLib_DEBUG' predefined. Only the Menu2 (and one other I think)
  236. library uses Debug_ calls.
  237.  
  238.  
  239.  
  240. 14 Nov 1995
  241.  
  242. Made Serial, PDriver non-DLL sublibraries.
  243.  
  244. Made various libraries more SDLS compatible - many libraries called
  245. atexit() or Event_Claim/Release() etc without using
  246. _DeskLib_SDLS_dllEntry( <handlerfn>).
  247.  
  248. Eg Dialog, EventMsg, Font2, Import, Menu2, Pane2, Print, Save, Template
  249. (font handling), Window.
  250.  
  251. Fixed a bug in Menu2 - could call the wrong selection-handler if a
  252. non-leaf menuitem was chosen.
  253.  
  254.  
  255.  
  256. 2.34    10 Nov 1995
  257.  
  258. Added Icon_InsertText, Window_IsOpen.
  259.  
  260. Added Wimp_E* macros - these are Wimp veneers which call Error2_Handle
  261. if the SWI returns an error.
  262.  
  263. Changed DeskMem organisation a bit. To add a different static-memory
  264. allocator system, just provide a replacement for DeskMem.c.XCalls.
  265.  
  266. Made JumpAuto_Error2Handler call Error2_Exit rather than
  267. Error2_VerboseExit.
  268.  
  269. Added !DLMisc, for misc libraries not needed by DeskLib.
  270.  
  271. Replaced SWI library with a smaller assembler version. The old one is in
  272. '!DLMisc'.
  273.  
  274. Moved Import library into the main DeskLib distribution, from !DLUser.
  275.  
  276. !DLUser is now empty..
  277.  
  278.  
  279.  
  280.  
  281. 07 Nov 1995
  282.  
  283. Removed 'do ... while (0)' construct in the JumpAuto_TryCatch macro.
  284. This allows 'break' in trycode or catchcode, but means you shouldn't put
  285. a ';' after the macro.
  286.  
  287. Made the Error2 signal-handler call signal(), to restore signal
  288. handling's use of Error2_SignalHandler - ANSI signal handling is reset
  289. to default after each signal.
  290.  
  291.  
  292. 05 Nov 1995
  293.  
  294. GFX.h: Added gfx_action_ enums for graphics plot actions.
  295. Added ColourTrans_RGB, SetGCOL2,3.
  296.  
  297.  
  298.  
  299. 2.33    02 Nov 1995
  300.  
  301. Changed directory structure of and some filenames in 'DeskLib.Docs.'
  302.  
  303. 01 Nov 1995
  304.  
  305. Added '!DeskLib.sh.' directory, which contains some standard assembler
  306. 'header' files - 'RegDefs' and 'Macros'. Previously, every sub-library
  307. directory had its own copy of these two files. Changed all .s files to
  308. GET these new files, and deleted local versions.
  309.  
  310. Changed Error2 globalblock - now has just two fields, the error type and
  311. a union which points to data. Errors which need some block of memory (eg
  312. Error2_HandleTextf) now have their own static blocks of memory - see
  313. DeskMem for an example.
  314.  
  315.  
  316.  
  317. 31 Oct 1995
  318.  
  319. Added ColourTrans_ReturnColourNumber and ColourTrans_ReturnGCOL.
  320. Added Menu_SetNotify macro.
  321. Changed File_SetType to be an assembler veneer, returning (os_error*).
  322. Added File_SetLoad, File_SetExec, File_CreateDirectory.
  323.  
  324. 26 Oct 1995
  325.  
  326. Changed Error2_HandleTextf to use 'bytes' field in error2_block and make
  327. the 'text' field point to the 'bytes' field.
  328.  
  329. SmallError: Removed all refereces to event_taskname
  330.  
  331.  
  332.  
  333. 18 Oct 1995
  334.  
  335. Changed Jump DLLDef file.
  336.  
  337. Changed some Pane2 external definitions to start with Pane2__ or pane2__,
  338. Removed Pane2's internal-only things from the DLLDef file.
  339.  
  340.  
  341. 15 Oct 1995
  342.  
  343. Added #ifndef __dl_xx_h to some headers.
  344.  
  345. 2.32    12 Oct 1995
  346.  
  347. 11 Oct 1995
  348.  
  349. Added __cplusplus to Window.h - it somehow missed out first time round...
  350. Added __cplusplus to Filing.h
  351. Added Error2_HandleText
  352.  
  353.  
  354. 05 Oct 1995
  355.  
  356. Added Menu_AddSubWindow macro.
  357.  
  358.  
  359.  
  360. 03 Oct 1995
  361.  
  362. Added lots of 'const' to prototypes and altered source code accordingly.
  363.  
  364.  
  365.  
  366. 02 Oct 1995
  367.  
  368. Moved Jump library into main '!DeskLib' library.
  369.  
  370. 29 Sep 1995
  371.  
  372. Added JumpAuto_TryCatch macro. This enables code that looks very similar
  373. to C++'s try-catch constructs.
  374.  
  375.  
  376. 28 Sep 1995
  377.  
  378. Added extra struct to button_type union for buttontype 10
  379. Added button2_* macros
  380.  
  381. Added Str_StrNCpy0, and equivalent macro strncpy0
  382.  
  383.  
  384.  
  385. 2.31
  386.  
  387. This version doesn't have any SDLS or Examples.
  388.  
  389.  
  390.  
  391.  
  392. 23 Sep 1995
  393.  
  394. New libraries in !DLUser:
  395.  
  396. SWI    Faster version of SWI.
  397. Sort    Quicksort
  398. Hash    Better hash library than previous version.
  399.  
  400.  
  401.  
  402. 22 Sep 1995
  403.  
  404. Removed blank makefile from 'DeskLib.Docs.Blanks'.
  405. Removed HelpCommnt directory from 'DeskLib.Docs.Blanks'.
  406.  
  407.  
  408.  
  409. 21 Sep 1995
  410.  
  411. Added ListNewer command to '!DLSources.Bin.'.
  412.  
  413.  
  414.  
  415. 20 Sep 1995
  416.  
  417. File    Added File_CheckError and File_XCheckError - simple macro veneers
  418.     for Error2_Check( file_lasterror).
  419.  
  420. Added <DeskLib_Sources$Dir>.Scripts.Static.MakeLib2 and MkOList2 . These
  421. use Libfile -i to add any new .o files to DeskLib, rather than remaking
  422. the whole library.
  423.  
  424. Added Every2 program to <DeskLib_Sources$Dir>.Bin .
  425.  
  426. Added 'Jump' library. This (hopefully) provides SDLS-compatible
  427. setjmp/longjmp. Also has easy-to-use macros for automating use of
  428. set/longjmp, eg for use with the Error2 library.
  429.  
  430.  
  431.  
  432. 13 Sep 1995
  433.  
  434. Filing
  435.     Allowed a 'void *reference' to be sent to Filing_ScanDir(Dir),
  436.     and added facility to 'prune' scans through the directory tree -
  437.     if the start-dir function returns filing_scan_PRUNE.  Renamed
  438.     the function-pointer typedefs used in Filing_ScanDir and
  439.     Filing_ScanDirByDir.
  440.  
  441. KernelSWIs
  442.     Added OS_ReadVarVal_GetLength, OS_ReadVarVal_ReadIntoBuffer,
  443.     OS_ReadVarVal_AutoAlloc.
  444.  
  445.  
  446.  
  447. 12 Sep 1995
  448.  
  449. objasm -throwback used in MMFs.
  450.  
  451.  
  452.  
  453. 09 Sep 1995
  454.  
  455. Added Error2 library
  456. Contains a simple error-handling mechanism. A few extra handlers are
  457. provided to help bracket (os_err *) functions, BOOL functions etc.
  458.  
  459. Added Error3 library - uses Error2 and provides an Event_-style system
  460. for claiming errors. ***Completely untested at the moment***
  461.  
  462. Added macros for every Wimp SWI veneer in WimpSWIs.h . These macros use
  463. Error_XHandle to provide semi-error-handling Wimp SWI calls.
  464.  
  465. Made all library calls to Wimp_* use Wimp_e*, so that any error-handler
  466. gets to see each error.
  467.  
  468. Made all libraries call DeskMem_Malloc/Calloc/Realloc/Free instead of
  469. the <stdlib.h> functions.
  470.  
  471. Added DeskMem library whihc impla\ements the DeskMem functions (to use
  472. malloc et al). The plan is to have alternative DeskMem libs (eg which se
  473. Mem_ calls).
  474.  
  475.  
  476.  
  477. 2.30 (02 Sep 1995)
  478.  
  479.